﻿/*+===================================================================
File:      Bullet.h

Summary:   Định nghĩa lớp cầu CBridge
===================================================================+*/

#ifndef __BRIDGE_H
#define __BRIDGE_H

#include "Bill.h"
#include "GameObject.h"
#include "Explosion.h"
#include "PlayState.h"

#define ORIGINAL	0
#define EXPLOSION1	1
#define EXPLOSION2	2
#define EXPLOSION3	3
#define EXPLOSION4	4
#define FINISH		5

const int BRIDGE_STATUS[6]
{
	ORIGINAL,
	EXPLOSION1,
	EXPLOSION2,
	EXPLOSION3,
	EXPLOSION4,
	FINISH
};
const int SPRITE_ID[5]
{
	ID_SPRITE_BRIDGE1,
	ID_SPRITE_BRIDGE2,
	ID_SPRITE_BRIDGE3,
	ID_SPRITE_BRIDGE4,
	ID_SPRITE_BRIDGE5
};

class CBridge : public CMoveableObject
{
private:
	// Con trỏ nhân vật để update theo.
	CBill* m_bill;
	//Cờ kiểm tra cầu bắt đầu nổ
	bool m_bIsStartExplosion;
	//Thời gian chuyển trạng thái
	float m_fTimeChange;
	//Trạng thái của cầu
	int m_nStatus;
	//Thời gian giữa các vụ nổ con của cầu
	float m_fTimeBridge;
	//Biến đếm số vụ nổ
	int exCount;
	//Mảng srpite các vụ nổ
	CSprite* m_aExSrpite[4];
public:
	CBridge(CBill* bill, D3DXVECTOR2 pos, int id, int typeID);

	~CBridge();

	void Update(float timeFrame);

	void UpdateBox(float timeFrame);

	void Draw();
};

#endif
